# vim:fileencoding=utf-8
#    Plugin feedback para matebot: Envia feedback para o grupo de administração.
#    Copyleft (C) 2016-2018 Desobediente Civil, Matehackers

#    This program is free software: you can redistribute it and/or modify
#    it under the terms of the GNU General Public License as published by
#    the Free Software Foundation, either version 3 of the License, or
#    (at your option) any later version.

#    This program is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.

#    You should have received a copy of the GNU General Public License
#    along with this program.  If not, see <http://www.gnu.org/licenses/>.

## TODO: Este plugin nunca foi testado para a eventualidade da inexistência ou não permissão de envio para o grupo de administração.
## TODO: try sem finally

def feedback(args):
  try:
    if len(args['command_list']) > 0:
      return {
        'status': True,
        'type': 'feedback',
        'response': u'Obrigado pelo feedback! Alguém em algum momento vai ler, eu acho.',
        'feedback': ' '.join(args['command_list']),
        'debug': u'Feedback bem sucedido',
        'multi': False,
      }
    else:
      return {
        'status': False,
        'type': 'erro',
        'response': u'Erro tentando enviar feedback. Você deve seguir este modelo:\n\n/feedback Digite a mensagem aqui',
        'debug': u'Feedback falhou, mensagem vazia',
        'multi': False,
      }
  except Exception as e:
      return {
        'status': False,
        'type': 'erro',
        'response': u'Erro tentando enviar feedback. Os desenvolvedores vão ser notificados de qualquer forma. Mas tente novamente, por favor.',
        'debug': u'Feedback falhou.\nExceção: %s' % (e),
        'multi': False,
      }

